package com.allo2o.common.VO;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

import com.allo2o.common.domain.OrderCommodityDO;
import com.allo2o.common.lepayEnum.PayTypeEnum;
import com.allo2o.common.lepayEnum.ReconciliateEnum;
import com.fasterxml.jackson.annotation.JsonFormat;

public class MerchantBillVO {

    private String     billId;

    private String     subBillId;

    private BigDecimal receiveAmount;

    private BigDecimal payableRate;

    private BigDecimal serviceCharge;

    private BigDecimal paidAmount;

    private String     payType;

    private String     billStatus;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date       gmtCreate;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date       gmtModify;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private Date       gmtBillComplete;

    private String     merchantUserAccount;

    private Integer    merchantId;

    private String     cashierId;

    private String     cashierNick;

    private Integer    commodityId;

    private String     commodityName;

    private Integer    commodityQuantity;

    private BigDecimal commodityTotalPrice;

    private String     reconciliateStatue;

    private BigDecimal refundServiceCharge;

    private BigDecimal refundTotal;

    private List<OrderCommodityDO> orderCommodityDOs;

    public List<OrderCommodityDO> getOrderCommodityDOs() {
        return orderCommodityDOs;
    }

    public void setOrderCommodityDOs(List<OrderCommodityDO> orderCommodityDOs) {
        this.orderCommodityDOs = orderCommodityDOs;
    }

    private String billDesc;

    private String     ext1;

    private String     ext2;

    private String     ext3;

    private String     ext4;

    private String     ext5;

    private String     ext6;

    private String     ext7;

    private String     ext8;

    private String     ext9;

    private String     ext10;

    private String     ext11;

    private String     ext12;

    private String     ext13;

    private String     ext14;

    private String     ext15;

    private String     ext16;

    private String     ext17;

    private String     ext18;

    private String     ext19;

    private String     ext20;

    private String     ext21;

    private String     ext22;

    private String     ext23;

    private String     ext24;

    private String     ext25;

    private String     ext27;

    private String     ext26;

    private String     ext28;

    private String     ext29;

    private String     ext30;

    private String     mobile;                 // 手机号

    private String     real_name;              // 真实姓名

    private String     payType_name;           // 支付类型转译

    private String     reconciliateStatue_name; // 对账状态转译

    public String getBillId() {
        return billId;
    }

    public void setBillId(String billId) {
        this.billId = billId == null ? null : billId.trim();
    }

    public String getSubBillId() {
        return subBillId;
    }

    public void setSubBillId(String subBillId) {
        this.subBillId = subBillId == null ? null : subBillId.trim();
    }

    public BigDecimal getReceiveAmount() {
        return receiveAmount;
    }

    public void setReceiveAmount(BigDecimal receiveAmount) {
        this.receiveAmount = receiveAmount;
    }

    public BigDecimal getPayableRate() {
        return payableRate;
    }

    public void setPayableRate(BigDecimal payableRate) {
        this.payableRate = payableRate;
    }

    public BigDecimal getServiceCharge() {
        return serviceCharge;
    }

    public void setServiceCharge(BigDecimal serviceCharge) {
        this.serviceCharge = serviceCharge;
    }

    public BigDecimal getPaidAmount() {
        return paidAmount;
    }

    public void setPaidAmount(BigDecimal paidAmount) {
        this.paidAmount = paidAmount;
    }

    public String getPayType() {
        return payType;
    }

    public void setPayType(String payType) {
        this.payType = payType == null ? null : payType.trim();
    }

    public String getBillStatus() {
        return billStatus;
    }

    public void setBillStatus(String billStatus) {
        this.billStatus = billStatus == null ? null : billStatus.trim();
    }

    public Date getGmtCreate() {
        return gmtCreate;
    }

    public void setGmtCreate(Date gmtCreate) {
        this.gmtCreate = gmtCreate;
    }

    public Date getGmtModify() {
        return gmtModify;
    }

    public void setGmtModify(Date gmtModify) {
        this.gmtModify = gmtModify;
    }

    public Date getGmtBillComplete() {
        return gmtBillComplete;
    }

    public void setGmtBillComplete(Date gmtBillComplete) {
        this.gmtBillComplete = gmtBillComplete;
    }

    public String getMerchantUserAccount() {
        return merchantUserAccount;
    }

    public void setMerchantUserAccount(String merchantUserAccount) {
        this.merchantUserAccount = merchantUserAccount == null ? null : merchantUserAccount.trim();
    }

    public Integer getMerchantId() {
        return merchantId;
    }

    public void setMerchantId(Integer merchantId) {
        this.merchantId = merchantId;
    }

    public String getCashierId() {
        return cashierId;
    }

    public void setCashierId(String cashierId) {
        this.cashierId = cashierId == null ? null : cashierId.trim();
    }

    public String getCashierNick() {
        return cashierNick;
    }

    public void setCashierNick(String cashierNick) {
        this.cashierNick = cashierNick == null ? null : cashierNick.trim();
    }

    public Integer getCommodityId() {
        return commodityId;
    }

    public void setCommodityId(Integer commodityId) {
        this.commodityId = commodityId;
    }

    public String getCommodityName() {
        return commodityName;
    }

    public void setCommodityName(String commodityName) {
        this.commodityName = commodityName == null ? null : commodityName.trim();
    }

    public Integer getCommodityQuantity() {
        return commodityQuantity;
    }

    public void setCommodityQuantity(Integer commodityQuantity) {
        this.commodityQuantity = commodityQuantity;
    }

    public BigDecimal getCommodityTotalPrice() {
        return commodityTotalPrice;
    }

    public void setCommodityTotalPrice(BigDecimal commodityTotalPrice) {
        this.commodityTotalPrice = commodityTotalPrice;
    }

    public String getReconciliateStatue() {
        return reconciliateStatue;
    }

    public void setReconciliateStatue(String reconciliateStatue) {
        this.reconciliateStatue = reconciliateStatue == null ? null : reconciliateStatue.trim();
    }

    public BigDecimal getRefundServiceCharge() {
        return refundServiceCharge;
    }

    public void setRefundServiceCharge(BigDecimal refundServiceCharge) {
        this.refundServiceCharge = refundServiceCharge;
    }

    public BigDecimal getRefundTotal() {
        return refundTotal;
    }

    public void setRefundTotal(BigDecimal refundTotal) {
        this.refundTotal = refundTotal;
    }

    public String getBillDesc() {
        return billDesc;
    }

    public void setBillDesc(String billDesc) {
        this.billDesc = billDesc == null ? null : billDesc.trim();
    }

    public String getExt1() {
        return ext1;
    }

    public void setExt1(String ext1) {
        this.ext1 = ext1 == null ? null : ext1.trim();
    }

    public String getExt2() {
        return ext2;
    }

    public void setExt2(String ext2) {
        this.ext2 = ext2 == null ? null : ext2.trim();
    }

    public String getExt3() {
        return ext3;
    }

    public void setExt3(String ext3) {
        this.ext3 = ext3 == null ? null : ext3.trim();
    }

    public String getExt4() {
        return ext4;
    }

    public void setExt4(String ext4) {
        this.ext4 = ext4 == null ? null : ext4.trim();
    }

    public String getExt5() {
        return ext5;
    }

    public void setExt5(String ext5) {
        this.ext5 = ext5 == null ? null : ext5.trim();
    }

    public String getExt6() {
        return ext6;
    }

    public void setExt6(String ext6) {
        this.ext6 = ext6 == null ? null : ext6.trim();
    }

    public String getExt7() {
        return ext7;
    }

    public void setExt7(String ext7) {
        this.ext7 = ext7 == null ? null : ext7.trim();
    }

    public String getExt8() {
        return ext8;
    }

    public void setExt8(String ext8) {
        this.ext8 = ext8 == null ? null : ext8.trim();
    }

    public String getExt9() {
        return ext9;
    }

    public void setExt9(String ext9) {
        this.ext9 = ext9 == null ? null : ext9.trim();
    }

    public String getExt10() {
        return ext10;
    }

    public void setExt10(String ext10) {
        this.ext10 = ext10 == null ? null : ext10.trim();
    }

    public String getExt11() {
        return ext11;
    }

    public void setExt11(String ext11) {
        this.ext11 = ext11 == null ? null : ext11.trim();
    }

    public String getExt12() {
        return ext12;
    }

    public void setExt12(String ext12) {
        this.ext12 = ext12 == null ? null : ext12.trim();
    }

    public String getExt13() {
        return ext13;
    }

    public void setExt13(String ext13) {
        this.ext13 = ext13 == null ? null : ext13.trim();
    }

    public String getExt14() {
        return ext14;
    }

    public void setExt14(String ext14) {
        this.ext14 = ext14 == null ? null : ext14.trim();
    }

    public String getExt15() {
        return ext15;
    }

    public void setExt15(String ext15) {
        this.ext15 = ext15 == null ? null : ext15.trim();
    }

    public String getExt16() {
        return ext16;
    }

    public void setExt16(String ext16) {
        this.ext16 = ext16 == null ? null : ext16.trim();
    }

    public String getExt17() {
        return ext17;
    }

    public void setExt17(String ext17) {
        this.ext17 = ext17 == null ? null : ext17.trim();
    }

    public String getExt18() {
        return ext18;
    }

    public void setExt18(String ext18) {
        this.ext18 = ext18 == null ? null : ext18.trim();
    }

    public String getExt19() {
        return ext19;
    }

    public void setExt19(String ext19) {
        this.ext19 = ext19 == null ? null : ext19.trim();
    }

    public String getExt20() {
        return ext20;
    }

    public void setExt20(String ext20) {
        this.ext20 = ext20 == null ? null : ext20.trim();
    }

    public String getExt21() {
        return ext21;
    }

    public void setExt21(String ext21) {
        this.ext21 = ext21 == null ? null : ext21.trim();
    }

    public String getExt22() {
        return ext22;
    }

    public void setExt22(String ext22) {
        this.ext22 = ext22 == null ? null : ext22.trim();
    }

    public String getExt23() {
        return ext23;
    }

    public void setExt23(String ext23) {
        this.ext23 = ext23 == null ? null : ext23.trim();
    }

    public String getExt24() {
        return ext24;
    }

    public void setExt24(String ext24) {
        this.ext24 = ext24 == null ? null : ext24.trim();
    }

    public String getExt25() {
        return ext25;
    }

    public void setExt25(String ext25) {
        this.ext25 = ext25 == null ? null : ext25.trim();
    }

    public String getExt27() {
        return ext27;
    }

    public void setExt27(String ext27) {
        this.ext27 = ext27 == null ? null : ext27.trim();
    }

    public String getExt26() {
        return ext26;
    }

    public void setExt26(String ext26) {
        this.ext26 = ext26 == null ? null : ext26.trim();
    }

    public String getExt28() {
        return ext28;
    }

    public void setExt28(String ext28) {
        this.ext28 = ext28 == null ? null : ext28.trim();
    }

    public String getExt29() {
        return ext29;
    }

    public void setExt29(String ext29) {
        this.ext29 = ext29 == null ? null : ext29.trim();
    }

    public String getExt30() {
        return ext30;
    }

    public void setExt30(String ext30) {
        this.ext30 = ext30 == null ? null : ext30.trim();
    }

    public String getMobile() {
        return mobile;
    }

    public void setMobile(String mobile) {
        this.mobile = mobile;
    }

    public String getReal_name() {
        return real_name;
    }

    public void setReal_name(String real_name) {
        this.real_name = real_name;
    }

    public String getPayType_name() {
        PayTypeEnum en = PayTypeEnum.getEnumByCode(this.getPayType());
        return en == null ? "" : en.getDesc();
    }

    public void setPayType_name(String payType_name) {
        this.payType_name = payType_name;
    }

    public String getReconciliateStatue_name() {
        ReconciliateEnum en = ReconciliateEnum.getEnumByCode(this.getReconciliateStatue());
        return en == null ? "" : en.getDesc();
    }

    public void setReconciliateStatue_name(String reconciliateStatue_name) {
        this.reconciliateStatue_name = reconciliateStatue_name;
    }

}